package com.kookapi.business.service.impl;

import java.util.List;
import com.kookapi.common.utils.DateUtils;
import com.kookapi.common.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.kookapi.business.mapper.TestScenarioMapper;
import com.kookapi.business.domain.TestScenario;
import com.kookapi.business.service.ITestScenarioService;

/**
 * 测试场景Service业务层处理
 * 
 * @author cleftgou
 * @date 2025-10-06
 */
@Service
public class TestScenarioServiceImpl implements ITestScenarioService 
{
    @Autowired
    private TestScenarioMapper testScenarioMapper;

    /**
     * 查询测试场景
     * 
     * @param id 测试场景主键
     * @return 测试场景
     */
    @Override
    public TestScenario selectTestScenarioById(Long id)
    {
        return testScenarioMapper.selectTestScenarioById(id);
    }

    /**
     * 查询测试场景列表
     * 
     * @param testScenario 测试场景
     * @return 测试场景
     */
    @Override
    public List<TestScenario> selectTestScenarioList(TestScenario testScenario)
    {
        return testScenarioMapper.selectTestScenarioList(testScenario);
    }

    /**
     * 新增测试场景
     * 
     * @param testScenario 测试场景
     * @return 结果
     */
    @Override
    public int insertTestScenario(TestScenario testScenario)
    {
        testScenario.setCreateTime(DateUtils.getNowDate());
        testScenario.setCreateBy(SecurityUtils.getUsername());
        return testScenarioMapper.insertTestScenario(testScenario);
    }

    /**
     * 修改测试场景
     * 
     * @param testScenario 测试场景
     * @return 结果
     */
    @Override
    public int updateTestScenario(TestScenario testScenario)
    {
        testScenario.setUpdateTime(DateUtils.getNowDate());
        testScenario.setUpdateBy(SecurityUtils.getUsername());
        return testScenarioMapper.updateTestScenario(testScenario);
    }

    /**
     * 批量删除测试场景
     * 
     * @param ids 需要删除的测试场景主键
     * @return 结果
     */
    @Override
    public int deleteTestScenarioByIds(Long[] ids)
    {
        return testScenarioMapper.deleteTestScenarioByIds(ids);
    }

    /**
     * 删除测试场景信息
     * 
     * @param id 测试场景主键
     * @return 结果
     */
    @Override
    public int deleteTestScenarioById(Long id)
    {
        return testScenarioMapper.deleteTestScenarioById(id);
    }
}
